package com.fy.common.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.enums.FieldFill;
import com.baomidou.mybatisplus.enums.IdType;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * sk_im_user_info
 * @author zhshuo
 */
@ApiModel(value="com.fy.service.component.model.SkImUserInfo用户信息")
@Data
@Accessors(chain = true)
public class SkImUserInfo implements Serializable {
    /**
     * 主键
     */
    @ApiModelProperty(value="主键")
    @TableId(type = IdType.ID_WORKER)
    private Long id;

    /**
     * 用户ID
     */
    @ApiModelProperty(value="用户ID")
    private Long skImUserId;

    /**
     * 姓氏
     */
    @ApiModelProperty(value="姓名")
    private String username;

    /**
     * 性别
     */
    @ApiModelProperty(value="性别")
    private Integer gender;

    /**
     * 生日
     */
    @ApiModelProperty(value="生日")
    private Date birthday;

    /**
     * 地区
     */
    @ApiModelProperty(value="地区")
    private String location;

    /**
     * 个性签名
     */
    @ApiModelProperty(value="个性签名")
    private String signature;

    /**
     * 手机号
     */
    @ApiModelProperty(value="手机号")
    private String phone;

    /**
     * 绑定邮箱
     */
    @ApiModelProperty(value="绑定邮箱")
    private String email;

    /**
     * 头像
     */
    @ApiModelProperty(value="头像")
    private String avatar;

    /**
     * 用户性质  0 普通用户 1内部用户
     */
    @ApiModelProperty(value="用户性质 0 普通用户 1内部用户")
    private Integer userType;

    /**
     * 是否显示手机号
     */
    @ApiModelProperty(value="是否显示手机号")
    private Boolean showPhone;

    /**
     * 是否显示最后上线时间
     */
    @ApiModelProperty(value="是否显示最后上线时间")
    private Boolean showLastLoginTime;

    /**
     * 好友添加验证
     */
    @ApiModelProperty(value="好友添加验证")
    private Boolean friendAddVerify;

    /**
     * 阅后即焚时间
     */
    @ApiModelProperty(value="阅后即焚时间")
    private Integer deleteAfterReadTime;

    /**
     * 最后登录时间
     */
    @ApiModelProperty(value="最后登录时间")
    private Date lastLoginTime;

    /**
     *
     */
    @ApiModelProperty(value = "注册IP")
    private String registerIp;

    /**
     * 是否可以通过账号查找
     */
    @ApiModelProperty(value = "是否可以通过账号查找")
    private Boolean findAccount;

    /**
     * 是否可通过手机号码查找
     */
    @ApiModelProperty(value = "是否可通过手机号码查找")
    private Boolean findPhone;

    /**
     * 是否可通过邮箱查找
     */
    @ApiModelProperty(value = "是否可通过邮箱查找")
    private Boolean findEmail;

    /**
     * 是否可通过群聊添加
     */
    @ApiModelProperty(value = "是否可通过群聊添加")
    private Boolean addByGroup;

    /**
     * 是否可通过二维码添加
     */
    @ApiModelProperty(value = "是否可通过二维码添加")
    private Boolean addByQrcode;

    /**
     * 是否可通过名片添加
     */
    @ApiModelProperty(value = "是否可通过名片添加")
    private Boolean addByBusinessCard;

    /**
     * 租户号
     */
    @ApiModelProperty(value="租户号")
    private String tenantId;

    /**
     * 乐观锁
     */
    @ApiModelProperty(value="乐观锁")
    private String revision;

    /**
     * 创建人
     */
    @ApiModelProperty(value="创建人")
    private Long createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新人
     */
    @ApiModelProperty(value="更新人")
    private Long lastUpdateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value="更新时间")
    @TableField(fill = FieldFill.UPDATE)
    private Date lastUpdateTime;

    private static final long serialVersionUID = 1L;

}